DicomObjects.NET.8.48 Documentation
DicomObjects Namespace / DicomDataSet Class / Write Method / Write(Byte[],String) Method

The byte array to write dataset to

Specifies the full UID of the transfer syntax with which the file is to be saved when Part 10 format is used. If omitted, the little-endian explicit VR transfer syntax is used.

Example

In This Topic
    Write(Byte[],String) Method
    In This Topic
    Writes dataset to a byte array with specified transfer syntax
    Syntax
    'Declaration
     
    
    Public Overloads Sub Write( _
       ByRef Array() As System.Byte, _
       ByVal TransferSyntax As System.String _
    ) 
    public void Write( 
       out System.byte[] Array,
       System.string TransferSyntax
    )

    Parameters

    Array

    The byte array to write dataset to

    TransferSyntax

    Specifies the full UID of the transfer syntax with which the file is to be saved when Part 10 format is used. If omitted, the little-endian explicit VR transfer syntax is used.

    Remarks

    Data may subsequently be read by the Read method or by other DICOM software.

    Example
    DicomDataSet ds = new DicomDataSet();
    byte[] data;
    string transferSyntax = TransferSyntaxes.JPEG2000Lossy;
                        
    string pixelTransferSyntax = TransferSyntaxes.ExplicitVRLittleEndian;
    ds.Add(Keyword.SamplesPerPixel, 1);
    ds.Add(Keyword.PhotometricInterpretation, "MONOCHROME2");
    ds.Add(Keyword.Rows, 512);
    ds.Add(Keyword.Columns, 512);
    ds.Add(Keyword.PixelSpacing, new float[] { 0.684f, 0.684f });
    ds.Add(Keyword.BitsAllocated, 16);
    ds.Add(Keyword.BitsStored, 12);
    ds.Add(Keyword.HighBit, 11);
    ds.Add(Keyword.PixelRepresentation, 0);
    ds.Add(Keyword.WindowCenter, new int[] { 35, 50 });
    ds.Add(Keyword.WindowWidth, new int[] { 350, 150 });
    ds.Add(Keyword.RescaleIntercept, -1200);
    ds.Add(Keyword.RescaleSlope, 1);
    ds.SetPixelData(pixelTransferSyntax, getData);             
                        
    ds.Write(out data, transferSyntax);
                        
    using (FileStream fs = new FileStream("Output_Dataset.dcm", FileMode.Create, FileAccess.Write))
    {
        fs.Write(data, 0, data.Length);
    }
                        
    // Method
    private Stream getData(int arg)
    {
        return new FileStream("pixel.data", FileMode.Open, FileAccess.Read, FileShare.Read);
    }
    Requirements

    Target Platforms: .NET CLR 4.8 or higher

    See Also